/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.itschapala.servicesnp.mbean;

import java.util.List;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.event.ActionEvent;
import mx.servicesnpayroll.bl.MembresiaBLLocal;
import mx.servicesnpayroll.enums.TipoDuracionMembresia;
import mx.servicesnpayroll.model.Membresia;

/**
 *
 * @author Grnmnd
 */
@ManagedBean
@SessionScoped
public class MembresiaMBean {
    @EJB
    private MembresiaBLLocal membresiaBL;
    
    private String membresia;
    private String contrasenaC;
    private Membresia membresiaE;
    private List<Membresia> membresias;
    private int b=0;
    private TipoDuracionMembresia[] tip= TipoDuracionMembresia.values();
    
    /**
     * Creates a new instance of membresiaMBean
     */
    public MembresiaMBean() {
    }

    public String getContrasenaC() {
        return contrasenaC;
    }

    public void setContrasenaC(String contrasenaC) {
        this.contrasenaC = contrasenaC;
    }

    public String getMembresia() {
        return membresia;
    }

    public void setMembresia(String membresia) {
        this.membresia = membresia;
    }

    public Membresia getMembresiaE() {
        return membresiaE;
    }

    public void setMembresiaE(Membresia membresiaE) {
        this.membresiaE = membresiaE;
    }

    public List<Membresia> getMembresias() {
        return membresias=membresiaBL.findAll();
    }

    public void setMembresias(List<Membresia> membresias) {
        this.membresias = membresias;
    }

    public TipoDuracionMembresia[] getTip() {
        return tip;
    }
    
    //--------------------------------PROCESS---------------------------------
    
    public String prepararNuevo() {
        b = 1;
        membresiaE = new Membresia();
        return "MembresiaCrearEditar";
    }

    public String prepararEditar(ActionEvent a) {
        b = 2;
//        String cId = a.getComponent().getClientId().split(":")[2];
//        int id = Integer.parseInt(cId);
//        membresiaE = membresias.get(id);
        return "MembresiaCrearEditar";
    }

    public void eliminar(ActionEvent a) {
        b = 3;
//        String cId = a.getComponent().getClientId().split(":")[2];
//        int id = Integer.parseInt(cId);
//        membresiaE = membresias.get(id);
        guardar();
    }

    public String guardar() {
        switch (b) {
            case 1:
                membresiaBL.create(membresiaE);
                break;
            case 2:
                membresiaBL.edit(membresiaE);
                break;
            case 3:
                membresiaBL.remove(membresiaE);
        }
        return "membresiaFT";
    }
    
}
